# ifndef DEF_ENEMY
# define DEF_ENEMY

# include "Source.h"

# include "Personage.h"

/*
*	This class handles the enemies in the game.
*/

class Enemy : public Personage
{
	public:

	Enemy();
	~Enemy();

	void setHighlight( bool);
	void setAction( Action);
	virtual void setLevel( unsigned int);
	void setTarget( Hero*);

	Ogre::Real getDetectionDistance();

	void receiveDamage( const Damage&);

	void init( World*, Renderer*, AI*, GUI*, const std::string&);
	void oneFrame( Ogre::Real);

	void activateQuest( Quest*);

	private:

	World* myWorld;
	AI* myAI;
	GUI* myGUI;

	std::string myLua;

	bool myHighlight;
	
	Action myAction;
	Hero* myTarget;
	Ogre::Real myDetectionDistance;

	int myStrength;
	int myStamina;

	unsigned int myExperience;
	Quest* myQuest;
};

# endif